body,html {
	margin: 0;
	padding: 0;
	height: 100%;
}
/* Ensure that there is gaps vertically and horizontally between toolbar buttons */
.ui-toolbar-group-left, .ui-toolbar-group-right {
	gap: 5px !important;
}
/* Ensure that the list grid filter components fit the column widths nicely */
.ui-column-customfilter {
	display: flex !important;
	justify-content: center !important;
}
.ui-column-filter {
	width: 95% !important;
}

/* Make font-awesome icons centered when buttons collapse their labels at mobile breakpoints */
.ui-button {
	min-width: 33px !important;
	min-height: 30px !important;
}
/* Except for spinner buttons */
.ui-spinner-button.ui-button {
	min-width: 0px !important;
	min-height: 0px !important;
}
/* And autocomplete dropdown buttons */
.ui-autocomplete-dropdown.ui-button {
	min-width: 0px !important;
	min-height: 0px !important;
}

/* skyve alignment styles */
.left {
	text-align: left;
}
span.left {
	display: block;
}
.center {
	text-align: center;
}
span.center {
	display: block;
}
.right {
	text-align: right;
}
span.right {
	display: block;
}

/* skyve form label alignment (left always on phone) */
.leftForm {
	display: flex;
	align-items: center;
	justify-content: start;
	text-align: left;
}
@media (min-width: 641px) {
	.rightForm {
		display: flex;
		align-items: center;
		justify-content: end;
		text-align: right;
	}
	.centerForm {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
	}
}
@media (max-width: 640px) {
	.rightForm {
		justify-content: start;
		text-align: left;
	}
	.centerForm {
		justify-content: start;
		text-align: left;
	}
}
.leftFormFlex {
	display: flex;
	align-items: center;
	justify-content: start;
	text-align: left;
}
@media (min-width: 768px) {
	.rightFormFlex {
		display: flex;
		align-items: center;
		justify-content: end;
		text-align: right;
	}
	.centerFormFlex {
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
	}
}
@media (max-width: 767px) {
	.rightFormFlex {
		justify-content: start;
		text-align: left;
	}
	.centerFormFlex {
		justify-content: start;
		text-align: left;
	}
}

/* data repeater */
.repeater .ui-datatable-tablewrapper table tbody tr {
	background: none !important;
	background-color: transparent !important;
}
.repeater-no-border {
	border: none !important;
}
.repeater-no-border .ui-datatable-tablewrapper {
	border: none !important;
}
.repeater-no-border .ui-datatable-tablewrapper table {
	border: none !important;
}
.repeater-no-border .ui-datatable-tablewrapper table tbody {
	border: none !important;
}
.repeater-no-border .ui-datatable-tablewrapper table tbody tr {
	border: none !important;
}
.repeater-no-border .ui-datatable-tablewrapper table tbody tr td {
	border: none !important;
}
.repeater-no-headers .ui-datatable-tablewrapper table thead {
	display: none !important;
}
.repeater-no-headers .ui-datatable-tablewrapper table tbody tr td .ui-column-title {
	display: none !important;
}
/* list repeater */
.repeater .ui-datatable-scrollable-header .ui-datatable-scrollable-header-box table tbody tr {
	background: none !important;
	background-color: transparent !important;
}
.repeater-no-border .ui-datatable-scrollable-body {
	border: none !important;
}
.repeater-no-border .ui-datatable-scrollable-body table {
	border: none !important;
}
.repeater-no-border .ui-datatable-scrollable-body table tbody {
	border: none !important;
}
.repeater-no-border .ui-datatable-scrollable-body table tbody tr {
	border: none !important;
}
.repeater-no-border .ui-datatable-scrollable-body table tbody tr td {
	border: none !important;
}
.repeater-no-headers .ui-datatable-scrollable-header .ui-datatable-scrollable-header-box table thead {
	display: none !important;
}
.repeater-no-headers .ui-datatable-scrollable-body table thead {
	display: none !important;
}
.repeater-no-headers .ui-datatable-scrollable-body table tbody tr td .ui-column-title {
	display: none !important;
}

/* popup wheel of death style */
.wheelOfDeath {
	position: fixed;
	width: 32px;
	height: 32px;
	right: 16px;
	bottom: 16px
}

/* Red environment banner style */
.skyveEnvBanner {
	background: red;
	font-size: 8px;
	color: white;
	position: fixed;
	text-align: center;
	left: 0px;
	z-index: 2147483646;
	width: 100%;
	height: 8px;
	line-height: 8px;
}
.skyveTopEnvBanner {
	top: 0px;
}
.skyveBottomEnvBanner {
	bottom: 0px;
}

/* Table style for those that combine an error message and input field */
table.inputComponent {
	width: 100%;
	border-collapse: collapse
}

/* Don't put a margin to the left for error message in form */
.formMessageStyle {
	margin-left: 0
}
/* Ensure that the error message has no padding when it is empty */
.ui-message:empty {
	padding: 0px;
}
/* For help icon */
i.help {
	color: #BBBBBB;
	margin-left: 5px;
	font-size: 1.5em;
}
/* Keep the tooltip layout neat and compact */
.ui-tooltip {
	max-width: 300px;
}

th.hiddenFilter input.ui-column-filter, th.hiddenFilter div.ui-column-customfilter {
	display: none !important;
}

.skyveEmptyListAddIcon {
	color: rgb(5, 116, 218);
}

/* ensure radio button groups have a text wrap that looks like its in a table */
.ui-selectoneradio tbody tr td {
	display: inline-flex;
	align-content: center;
	align-items: center;
}

/* Ensure PrimeVue datepicker has no drop shadow */
.p-datepicker {
	box-shadow: 0 0 !important;
	padding: 0px !important;
}

/* Used to put the sidebar on the RHS */
#sidebarWrapper {
	display: flex;
	flex-direction: row;
	align-items: flex-start;
}
